# 1. 请描述python容器类型的可变,不可变,有序和无序的含义.
"""
可变类型可以增加删除元素,有序可以用过索引值获取数据
"""
# 2. 有一个列表 lst = ['a', 'b', 'c', 'd', 'e', 'f', 'g']，请写出切片操作，得到以下结果：
lst = ['a', 'b', 'c', 'd', 'e', 'f', 'g']
# ['b', 'c']
# print(lst[1:3])
# ['d', 'e', 'f']
# print(lst[3:6])
# ['a', 'b', 'c', 'd']
# print(lst[1:5])
# ['e', 'f', 'g']
# print(lst[-3:])
# ['g', 'e', 'c', 'a']
# print(lst[-1::-2])


# 3. 有一个列表 lst = ['a', 'b', 'c', 'd', 'e', 'f', 'g']，请将列表中的元素向右循环移动两个位置，
# 即得到新列表 ['f', 'g', 'a', 'b', 'c', 'd', 'e']
lst = ['a', 'b', 'c', 'd', 'e', 'f', 'g']
new_list = lst[-2:] + lst[:-3]
print(new_list)

# 4. `reversed`可以对字符串使用, 尝试使用reversed将任意字符串反转. 'hello world' 反转输出 'dlrow olleh'
h_str = 'hello world'
print("".join(reversed(h_str)))

# 5. 给定一个全英文的字符串, 将其中的单词顺序反转, 如: 'hello world and python', 输出 'python and world hello'
en_str = 'hello world and python'
en_list = en_str.split(" ")
en_list.reverse()
print(" ".join(en_list))

# 6. 编写一个程序，将两个列表合并为一个列表，并去除重复元素，并输出结果。例如，输入列表为 [1, 2, 3, 4] 和 [3, 4, 5]，输出为 [1, 2, 3, 4, 5]
lst1 = [1, 2, 3, 4]
lst2 = [3, 4, 5]
for i in lst1:
    if i in lst2:
        lst2.remove(i)
lst1.extend(lst2)
print(lst1)